import java.util.ArrayList;

public class ConjuntoTransacoes {
	private ArrayList<Transacao> transacoes;
	
	public ConjuntoTransacoes() {
		transacoes = new ArrayList<Transacao>();
	}
	
	public void abort(Transacao tx) {
		transacoes.remove(tx);
	}
	
	public void restart(Transacao tx) {
		
		long timestamp = System.nanoTime();
		
		tx.setTimestamp(timestamp);
		adicionarTransacao(tx);
	}
	
	public Transacao getTransacaoById(int id) {
		for (Transacao t : transacoes)
			if (t.getId() == id)
				return t;
		
		return null;
	}
	
	public void adicionarTransacao(Transacao tx) {
		transacoes.add(tx);
	}
	
	public int length() {
		return transacoes.size();
	}
	
	public Transacao getTransacaoByIndex(int index) {
		return transacoes.get(index);
	}
	
	public ArrayList<Transacao> getTransacoes()
	{
		return transacoes;
	}

}
